/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Base;

import Negocio.*;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;

/**
 *
 * @author Usuario
 */
public class EncuestaDB {
    
    
    

    public Encuesta cargarDatosEncuesta() throws SQLException 
    {
       Encuesta miEncuesta=null;
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT * FROM ENCUESTA WHERE ID_ENCUESTA=" + 1 + "";
        ResultSet resultado = stmt.executeQuery(consulta);
        while (resultado.next()) 
        {
            miEncuesta = new Encuesta(resultado.getInt("ID_ENCUESTA"),resultado.getString("TITULO"),resultado.getString("CABECERA"),resultado.getString("DESPEDIDA"),resultado.getString("ESTADO"));
            //miEncuesta=null;
        }
        var.commit();
        db.getConnection().close();
        return miEncuesta;
        
    }

    public ArrayList<Seccion> cargarSecciones() throws SQLException {
        
        ArrayList<Seccion> secciones = new ArrayList<Seccion>();
        Seccion miSeccion;
        
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        //String consulta="SELECT SECCION.ID_SECCION,DESCRIPCION FROM SECCION,ENCUESTA_SECCION WHERE ENCUESTA_SECCION.ID_ENCUESTA=1 AND ENCUESTA_SECCION.ID_SECCION=SECCION.ID_SECCION " ;  
        String consulta="SELECT * FROM SECCION";
        ResultSet resultado = stmt.executeQuery(consulta);
        while (resultado.next()) 
        {
             miSeccion=new Seccion(Integer.parseInt(resultado.getString("ID_SECCION")),resultado.getString("DESCRIPCION"));
            secciones.add(miSeccion);
        }
        var.commit();    
        db.getConnection().close();
        return secciones;
        
    }

    public ArrayList<Pregunta> cargarPreguntas() throws SQLException 
    {
        ArrayList<Pregunta> preguntas = new ArrayList<Pregunta>();
        Pregunta miPregunta;
        
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT * FROM PREGUNTA" ;  
        ResultSet resultado = stmt.executeQuery(consulta);
        while (resultado.next()) 
        {
            
            miPregunta=new Pregunta(Integer.parseInt(resultado.getString("ID_PREGUNTA")),resultado.getString("DESCRIPCION"),Integer.parseInt(resultado.getString("OBLIGATORIA")));
            preguntas.add(miPregunta);
        }
            db.getConnection().close();
        return preguntas;
    }

    public ArrayList<Pregunta_Opciones> cargarPreguntasOpciones() throws SQLException {
        
        ArrayList<Pregunta_Opciones> preguntasOp = new ArrayList<Pregunta_Opciones>();
        Pregunta_Opciones miPreguntaOpcion;
        ArrayList<Opcion> opciones = new ArrayList<Opcion>();
        
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT PREGUNTA.ID_PREGUNTA,DESCRIPCION,OBLIGATORIA,NUMERO_PERMITIDAS FROM PREGUNTA,PREGUNTA_OPCIONES WHERE PREGUNTA.ID_PREGUNTA=PREGUNTA_OPCIONES.ID_PREGUNTA" ;  
        ResultSet resultado = stmt.executeQuery(consulta);
        while (resultado.next()) 
        {
            opciones=cargarOpciones(resultado.getInt("ID_PREGUNTA"));
            miPreguntaOpcion=new Pregunta_Opciones(resultado.getInt("ID_PREGUNTA"),resultado.getString("DESCRIPCION"),Integer.parseInt(resultado.getString("OBLIGATORIA")),resultado.getInt("NUMERO_PERMITIDAS"),opciones);
            preguntasOp.add(miPreguntaOpcion);
            System.out.println("hola");
        }
        db.getConnection().close();
        return preguntasOp;
    }
    
    public ArrayList<Opcion> cargarOpciones(int id_pregunta) throws SQLException 
    {
        ArrayList<Opcion> opciones = new ArrayList<Opcion>();
        Opcion miOpcion;
        
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
   
        String subconsulta = "SELECT OPCIONES.ID_PREGUNTA,NUMERO,DESCRIPCION FROM OPCIONES WHERE OPCIONES.ID_PREGUNTA="+ id_pregunta+""; 
        ResultSet subresultado = stmt.executeQuery(subconsulta);
            while (subresultado.next())
            {
                miOpcion=new Opcion(subresultado.getInt("ID_PREGUNTA"),subresultado.getInt("NUMERO"),subresultado.getString("DESCRIPCION"));
                opciones.add(miOpcion);
            }
            db.getConnection().close();
            return opciones;
    }

    public ArrayList<Pregunta_Texto> cargarPreguntasTexto() throws SQLException 
    {
        ArrayList<Pregunta_Texto> preguntasTexto = new ArrayList<Pregunta_Texto>();
        Pregunta_Texto miPreguntaTexto;
        Tipo_Respuesta tipo = new Tipo_Respuesta();
        
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT PREGUNTA.ID_PREGUNTA,DESCRIPCION,OBLIGATORIA FROM PREGUNTA,PREGUNTA_TEXTO WHERE PREGUNTA.ID_PREGUNTA=PREGUNTA_TEXTO.ID_PREGUNTA" ;  
        ResultSet resultado = stmt.executeQuery(consulta);
        while (resultado.next()) 
        {
            tipo=cargarTipo(resultado.getInt("ID_PREGUNTA"));
            miPreguntaTexto=new Pregunta_Texto(resultado.getInt("ID_PREGUNTA"),resultado.getString("DESCRIPCION"),Integer.parseInt(resultado.getString("OBLIGATORIA")),tipo);
            preguntasTexto.add(miPreguntaTexto);
            //System.out.println("hola");
        }
        var.commit();
        db.getConnection().close();
        return preguntasTexto;
    }
    
    
    public Tipo_Respuesta cargarTipo(int id_pregunta) throws SQLException
    {
        Tipo_Respuesta tipo = new Tipo_Respuesta();
        
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT TIPO_RESPUESTA_PREGUNTA.ID_TIPO_RESPUESTA ,TIPO FROM TIPO_RESPUESTA_PREGUNTA,TIPO_RESPUESTA WHERE TIPO_RESPUESTA_PREGUNTA.ID_PREGUNTA="+id_pregunta+" AND TIPO_RESPUESTA_PREGUNTA.ID_TIPO_RESPUESTA=TIPO_RESPUESTA.ID_TIPO_RESPUESTA " ;  
        ResultSet resultado = stmt.executeQuery(consulta);
        if (resultado.next()) 
        {
            
            tipo=new Tipo_Respuesta(resultado.getInt("ID_TIPO_RESPUESTA"),resultado.getString("TIPO"));
        }
        var.commit();
        db.getConnection().close();
        return tipo;
        
        
    }

    public ArrayList<Pregunta_Cuadricula> cargarPreguntasCuadricula() throws SQLException {
        ArrayList<Pregunta_Cuadricula> preguntasCuadricula = new ArrayList<Pregunta_Cuadricula>();
        Pregunta_Cuadricula miPreguntaCuadricula;
        ArrayList<Opcion_Fila> opcionesFila = new ArrayList<Opcion_Fila>();
        ArrayList<Opcion_Columna> opcionesColumna = new ArrayList<Opcion_Columna>();
        
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT PREGUNTA.ID_PREGUNTA,DESCRIPCION,OBLIGATORIA,PERMITIDAS_POR_FILA,PERMITIDAS_POR_COLUMNA FROM PREGUNTA,PREGUNTA_CUADRICULA WHERE PREGUNTA.ID_PREGUNTA=PREGUNTA_CUADRICULA.ID_PREGUNTA" ;  
        ResultSet resultado = stmt.executeQuery(consulta);
        while (resultado.next()) 
        {
            opcionesFila=cargarOpcionesFila(resultado.getInt("ID_PREGUNTA"));
            opcionesColumna=cargarOpcionesColumna(resultado.getInt("ID_PREGUNTA"));
            miPreguntaCuadricula=new Pregunta_Cuadricula(resultado.getInt("ID_PREGUNTA"),resultado.getString("DESCRIPCION"),Integer.parseInt(resultado.getString("OBLIGATORIA")),resultado.getInt("PERMITIDAS_POR_FILA"),resultado.getInt("PERMITIDAS_POR_COLUMNA"),opcionesFila,opcionesColumna);
            preguntasCuadricula.add(miPreguntaCuadricula);
            //System.out.println("hola");
        }
        var.commit();
        db.getConnection().close();
        return preguntasCuadricula;
    }
    
    public ArrayList<Opcion_Fila> cargarOpcionesFila(int id_pregunta) throws SQLException 
    {
        ArrayList<Opcion_Fila> opcionesFila = new ArrayList<Opcion_Fila>();
        Opcion_Fila miOpcionFila;
        
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
   
        String subconsulta = "SELECT OPCION_FILA.ID_PREGUNTA,NUMERO,DESCRIPCION FROM OPCION_FILA WHERE OPCION_FILA.ID_PREGUNTA="+ id_pregunta+""; 
        ResultSet subresultado = stmt.executeQuery(subconsulta);
            while (subresultado.next())
            {
                miOpcionFila=new Opcion_Fila(subresultado.getInt("ID_PREGUNTA"),subresultado.getInt("NUMERO"),subresultado.getString("DESCRIPCION"));
                opcionesFila.add(miOpcionFila);
            }
            db.getConnection().close();
            return opcionesFila;
    }
    public ArrayList<Opcion_Columna> cargarOpcionesColumna(int id_pregunta) throws SQLException 
    {
        ArrayList<Opcion_Columna> opcionesColumna = new ArrayList<Opcion_Columna>();
        Opcion_Columna miOpcionColumna;
        
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
   
        String subconsulta = "SELECT OPCION_COLUMNA.ID_PREGUNTA,NUMERO,DESCRIPCION FROM OPCION_COLUMNA WHERE OPCION_COLUMNA.ID_PREGUNTA="+ id_pregunta+""; 
        ResultSet subresultado = stmt.executeQuery(subconsulta);
            while (subresultado.next())
            {
                miOpcionColumna=new Opcion_Columna(subresultado.getInt("ID_PREGUNTA"),subresultado.getInt("NUMERO"),subresultado.getString("DESCRIPCION"));
                opcionesColumna.add(miOpcionColumna);
            }
            db.getConnection().close();
            return opcionesColumna;
    }
    
    public String cargarInfoColegio(String cedula) throws SQLException 
    {
        String info= null;
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
   
        String consulta = "SELECT DESCRIPCION FROM EXALUMNO_ENCUESTAE, RESPUESTA_CUADRICULA, OPCION_FILA WHERE EXALUMNO_ENCUESTAE.CEDULA_EXALUMNO='"+ cedula +"' AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=1 AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=RESPUESTA_CUADRICULA.ID_ENCUESTA AND EXALUMNO_ENCUESTAE.NUMERO=RESPUESTA_CUADRICULA.NUMERO AND RESPUESTA_CUADRICULA.ID_PREGUNTA=9 AND RESPUESTA_CUADRICULA.NUMERO_COLUMNA=1 AND OPCION_FILA.ID_PREGUNTA=9 AND RESPUESTA_CUADRICULA.NUMERO_FILA=OPCION_FILA.NUMERO"; 
        ResultSet resultado = stmt.executeQuery(consulta);
            if (resultado.next())
            {
                
                info = resultado.getString("DESCRIPCION");
            }
            
            
            
            db.getConnection().close();
            return info;
    }

    public String cargarPromedioUni(String cedula) throws SQLException {
        String info= null;
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
   
        String consulta = "SELECT DESCRIPCION FROM EXALUMNO_ENCUESTAE, RESPUESTA_CUADRICULA, OPCION_FILA WHERE EXALUMNO_ENCUESTAE.CEDULA_EXALUMNO='"+ cedula +"' AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=1 AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=RESPUESTA_CUADRICULA.ID_ENCUESTA AND EXALUMNO_ENCUESTAE.NUMERO=RESPUESTA_CUADRICULA.NUMERO AND RESPUESTA_CUADRICULA.ID_PREGUNTA=9 AND RESPUESTA_CUADRICULA.NUMERO_COLUMNA=2 AND OPCION_FILA.ID_PREGUNTA=9 AND RESPUESTA_CUADRICULA.NUMERO_FILA=OPCION_FILA.NUMERO"; 
        ResultSet resultado = stmt.executeQuery(consulta);
            while (resultado.next())
            {
                
                info = resultado.getString("DESCRIPCION");
            }
            
            db.getConnection().close();
            return info;
    }

    public Object[] cargarEstudioAvanzado(String cedula) throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
   
        String consulta = "SELECT FACULTAD.NOMBRE FACULTAD, ESCUELA.NOMBRE ESCUELA, TITULO.NOMBRE TITULO, ANIO_GRADUACION FROM TITULO_EXALUMNO, TITULO, TITULO_ESCUELA, ESCUELA, ESCUELA_FACULTAD, FACULTAD WHERE CEDULA='"+ cedula +"' AND TITULO_EXALUMNO.ID_TITULO=TITULO.ID_TITULO AND TITULO.ID_TITULO=TITULO_ESCUELA.ID_TITULO AND TITULO_ESCUELA.ID_ESCUELA=ESCUELA.ID_ESCUELA AND ESCUELA.ID_ESCUELA=ESCUELA_FACULTAD.ID_ESCUELA AND ESCUELA_FACULTAD.ID_FACULTAD=FACULTAD.ID_FACULTAD"; 
        ResultSet resultado = stmt.executeQuery(consulta);
            if (resultado.next())
            {
                
                Object info[] = {resultado.getString("FACULTAD"), resultado.getString("ESCUELA"), resultado.getString("TITULO"), resultado.getString("ANIO_GRADUACION")};
                db.getConnection().close();
                System.out.println(info[0].toString());
                return info;
            }
            return null;
    }

    public TableModel obtenerEstudiosAvanzados(DefaultTableModel temp, String cedula) throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT OPCION_COLUMNA.DESCRIPCION TIPO, OPCION_FILA.DESCRIPCION CAMPO FROM EXALUMNO_ENCUESTAE, RESPUESTA_CUADRICULA, OPCION_FILA, OPCION_COLUMNA WHERE EXALUMNO_ENCUESTAE.CEDULA_EXALUMNO='"+ cedula +"' AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=1 AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=RESPUESTA_CUADRICULA.ID_ENCUESTA AND EXALUMNO_ENCUESTAE.NUMERO=RESPUESTA_CUADRICULA.NUMERO AND RESPUESTA_CUADRICULA.ID_PREGUNTA=21 AND OPCION_FILA.ID_PREGUNTA=21 AND RESPUESTA_CUADRICULA.NUMERO_FILA=OPCION_FILA.NUMERO AND OPCION_COLUMNA.ID_PREGUNTA=21 AND RESPUESTA_CUADRICULA.NUMERO_COLUMNA=OPCION_COLUMNA.NUMERO";
        ResultSet resultado = stmt.executeQuery(consulta);
        
        while (resultado.next()) 
        {
            Object nuevo[] = {resultado.getString("TIPO"),resultado.getString("CAMPO")};
            temp.addRow(nuevo);
        
        }
        db.getConnection().close();
        return temp;
    }

    public TableModel obtenerEstudiosRepresentante(DefaultTableModel temp, String cedula) throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT OPCION_COLUMNA.DESCRIPCION REPRESENTANTE, OPCION_FILA.DESCRIPCION ESTUDIOS FROM EXALUMNO_ENCUESTAE, RESPUESTA_CUADRICULA, OPCION_FILA, OPCION_COLUMNA WHERE EXALUMNO_ENCUESTAE.CEDULA_EXALUMNO='"+ cedula +"' AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=1 AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=RESPUESTA_CUADRICULA.ID_ENCUESTA AND EXALUMNO_ENCUESTAE.NUMERO=RESPUESTA_CUADRICULA.NUMERO AND RESPUESTA_CUADRICULA.ID_PREGUNTA=6 AND OPCION_FILA.ID_PREGUNTA=6 AND RESPUESTA_CUADRICULA.NUMERO_FILA=OPCION_FILA.NUMERO AND OPCION_COLUMNA.ID_PREGUNTA=6 AND RESPUESTA_CUADRICULA.NUMERO_COLUMNA=OPCION_COLUMNA.NUMERO";
        ResultSet resultado = stmt.executeQuery(consulta);
        
        while (resultado.next()) 
        {
            Object nuevo[] = {resultado.getString("REPRESENTANTE"),resultado.getString("ESTUDIOS")};
            temp.addRow(nuevo);
        
        }
        db.getConnection().close();
        return temp;
    }

    public TableModel obtenerEncuestas(DefaultTableModel temp, String cedula) throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT ENCUESTA.ID_ENCUESTA, TITULO, CASE ESTADO WHEN 1 THEN 'ACTIVA' ELSE 'INACTIVA' END ESTADO FROM EXALUMNO_ENCUESTAE, ENCUESTA WHERE CEDULA_EXALUMNO='"+ cedula +"' AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=ENCUESTA.ID_ENCUESTA";
        ResultSet resultado = stmt.executeQuery(consulta);
        
        while (resultado.next()) 
        {
            Object nuevo[] = {resultado.getString("ID_ENCUESTA"),resultado.getString("TITULO"),resultado.getString("ESTADO")};
            temp.addRow(nuevo);
        
        }
        db.getConnection().close();
        return temp;
    }

 /*   public Object[] obtenerDatos(String cedula) throws SQLException {
        DatabaseManager db = new DatabaseManager();
        
       // Statement stmt = var.createStatement();
   
        /*String consulta = "SELECT DESCRIPCION FROM EXALUMNO_ENCUESTAE, RESPUESTA_OPCION, OPCIONES WHERE CEDULA_EXALUMNO='"+ cedula +"' AND  EXALUMNO_ENCUESTAE.ID_ENCUESTA=1 AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=RESPUESTA_OPCION.ID_ENCUESTA AND EXALUMNO_ENCUESTAE.NUMERO=RESPUESTA_OPCION.NUMERO AND RESPUESTA_OPCION.ID_PREGUNTA=3 AND OPCIONES.ID_PREGUNTA=3 AND RESPUESTA_OPCION.NUMERO_OPCION=OPCIONES.NUMERO"; 
        ResultSet resultado = stmt.executeQuery(consulta);
        String consulta1 = "SELECT TEXTO FROM EXALUMNO_ENCUESTAE, RESPUESTA_TEXTO WHERE CEDULA_EXALUMNO='"+ cedula +"' AND  EXALUMNO_ENCUESTAE.ID_ENCUESTA=1 AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=RESPUESTA_TEXTO.ID_ENCUESTA AND EXALUMNO_ENCUESTAE.NUMERO=RESPUESTA_TEXTO.NUMERO AND RESPUESTA_TEXTO.ID_PREGUNTA=4"; 
        ResultSet resultado1 = stmt.executeQuery(consulta1);
        String consulta2 = "SELECT DESCRIPCION  FROM EXALUMNO_ENCUESTAE, RESPUESTA_OPCION, OPCIONES WHERE CEDULA_EXALUMNO='"+ cedula+"' AND  EXALUMNO_ENCUESTAE.ID_ENCUESTA=1 AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=RESPUESTA_OPCION.ID_ENCUESTA AND EXALUMNO_ENCUESTAE.NUMERO=RESPUESTA_OPCION.NUMERO AND RESPUESTA_OPCION.ID_PREGUNTA=5 AND OPCIONES.ID_PREGUNTA=5 AND RESPUESTA_OPCION.NUMERO_OPCION=OPCIONES.NUMERO"; 
        ResultSet resultado2 = stmt.executeQuery(consulta2);*/
        
               /* Object info[] = {obtenerGenero(cedula), obtenerNacionalidad(cedula), obtenerRaza(cedula)};
                db.getConnection().close();
                return info;
         
      
    }*/
    
 
 

    public TableModel obtenerEncuestasLlenar(DefaultTableModel temp, String cedula) throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT ENCUESTA.ID_ENCUESTA, TITULO, CASE ESTADO WHEN 1 THEN 'ACTIVA' ELSE 'INACTIVA' END ESTADO FROM EXALUMNO_ENCUESTA, ENCUESTA WHERE CEDULA_EXALUMNO='"+ cedula +"' AND EXALUMNO_ENCUESTA.ID_ENCUESTA=ENCUESTA.ID_ENCUESTA MINUS SELECT ENCUESTA.ID_ENCUESTA, TITULO, CASE ESTADO WHEN 1 THEN 'ACTIVA' ELSE 'INACTIVA' END ESTADO FROM EXALUMNO_ENCUESTAE, ENCUESTA WHERE CEDULA_EXALUMNO='"+ cedula +"' AND EXALUMNO_ENCUESTAE.ID_ENCUESTA=ENCUESTA.ID_ENCUESTA";
        ResultSet resultado = stmt.executeQuery(consulta);
        
        while (resultado.next()) 
        {
            Object nuevo[] = {resultado.getString("ID_ENCUESTA"),resultado.getString("TITULO"),resultado.getString("ESTADO")};
            temp.addRow(nuevo);
        
        }
        db.getConnection().close();
        return temp;
    }

    public ArrayList listarEncuestas() throws SQLException {
        
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT ID_ENCUESTA,TITULO,CABECERA,DESPEDIDA,CASE ESTADO WHEN 0 THEN 'DESHABILITADA' WHEN 1 THEN 'HABILITADA' END ESTADO FROM ENCUESTA";
        ResultSet resultado=stmt.executeQuery(consulta);
        ArrayList <Encuesta> todos= new ArrayList<Encuesta>();
        while (resultado.next())
        {
            Encuesta nueva = new Encuesta(resultado.getInt("ID_ENCUESTA"),resultado.getString("TITULO"),resultado.getString("CABECERA"),resultado.getString("DESPEDIDA"),resultado.getString("ESTADO"));
            todos.add(nueva);
        }
        db.getConnection().close();
        return todos;
    }

    public boolean comprobarAsignacion(String id_encuesta, String cedula) throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT * FROM EXALUMNO_ENCUESTA WHERE CEDULA_EXALUMNO='"+ cedula+"' AND ID_ENCUESTA='"+ id_encuesta +"'";
        ResultSet resultado=stmt.executeQuery(consulta);
        while(resultado.next())
        {
            db.getConnection().close();
            return true;
        }
        
        db.getConnection().close();
        return false;
    }

    public int asignarEncuesta(String id_encuesta, String cedula) throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="INSERT INTO EXALUMNO_ENCUESTA VALUES ('"+ cedula +"','"+ id_encuesta +"')";
        int resultado=stmt.executeUpdate(consulta);
        var.commit();
        db.getConnection().close();
        return resultado;
    }

    public int desasignarEncuesta(String id_encuesta, String cedula)throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="DELETE FROM EXALUMNO_ENCUESTA WHERE CEDULA_EXALUMNO='"+ cedula+"' AND ID_ENCUESTA='"+id_encuesta+"'";
        int resultado=stmt.executeUpdate(consulta);
        var.commit();
        db.getConnection().close();
        return resultado;
        
    }

    public int modificarEstadoEncuesta(String id_encuesta, int estado) throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="UPDATE ENCUESTA SET ESTADO="+estado+" WHERE ID_ENCUESTA="+id_encuesta;
        int resultado=stmt.executeUpdate(consulta);
        var.commit();
        db.getConnection();
        return resultado;
    }

    public boolean verificarEncuestaLlenada(String id_encuesta) throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="SELECT * FROM EXALUMNO_ENCUESTAE WHERE ID_ENCUESTA="+ id_encuesta;
        ResultSet resultado=stmt.executeQuery(consulta);
        while (resultado.next())
        {
            db.getConnection().close();
            return true;
        }
        db.getConnection().close();
        return false;
    }

    public int eliminarEncuesta(String id_encuesta)throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="DELETE FROM ENCUESTA WHERE ID_ENCUESTA="+id_encuesta;
        int resultado=stmt.executeUpdate(consulta);
        var.commit();
        return resultado;
    }

    public int modificarDescripcionEncuesta(String id_encuesta, String titulo,String cabecera,String despedida) throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        
        String consulta="UPDATE ENCUESTA SET TITULO='"+titulo+",'CABECERA='"+cabecera+",'DESPEDIDA='"+despedida+"' WHERE ID_ENCUESTA="+id_encuesta;
        int resultado=stmt.executeUpdate(consulta);
        var.commit();
        db.getConnection().close();
        return resultado;
        
    }

    public int crearEncuesta(String titulo, String cabecera,String despedida) throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="INSERT INTO ENCUESTA VALUES (INCREMENTO_ENCUESTA.NEXTVAL,'"+titulo+"','"+cabecera+"','"+despedida+"',0)";
        int resultado=stmt.executeUpdate(consulta);
        var.commit();
        db.getConnection().close();
        return resultado;
    }

    public int borrarVista() throws SQLException {
        DatabaseManager db = new DatabaseManager();
        Connection var = db.getConnection();
        Statement stmt = var.createStatement();
        String consulta="DROP VIEW VISTA1";
        int resultado=stmt.executeUpdate(consulta);
        var.commit();
        db.getConnection().close();
        return resultado;
    }
    
}
